package org.openkanban.server.domain;

import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;

/**
 * entity class for activity
 */
@Entity
public class Activity implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long activityId;

    private String activityName;
    private Integer wipLimit;

    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private Set<Kanban> kanbans = new HashSet<Kanban>();

    public Activity() {
    }

    public Long getActivityId() {
	return activityId;
    }

    public void setActivityId(Long activityId) {
	this.activityId = activityId;
    }

    public String getActivityName() {
	return activityName;
    }

    public void setActivityName(String activityName) {
	this.activityName = activityName;
    }

    public Set<Kanban> getKanbans() {
	return kanbans;
    }

    public void setKanbans(Set<Kanban> kanbans) {
	this.kanbans = kanbans;
    }

    public Integer getWipLimit() {
	return wipLimit;
    }

    public void setWipLimit(Integer wipLimit) {
	this.wipLimit = wipLimit;
    }

}
